home *** CD-ROM | disk | FTP | other *** search
/ SunSoft Catalyst CDWARE 1996 May to August / Catalyst CDWARE 1996 May to August.iso / .products / .bin / httpd / Solaris_x86 / show.pl < prev    next >
Perl Script  |  1996-03-19  |  2KB  |  98 lines

  1. #!./perl
  2. #req_more_info.pl
  3.  
  4. # parse disc name from ServerName Environt Variable with this script
  5.  
  6. do './variables.pl';
  7.  
  8. ##############################################################################
  9. # url_decode: transforms the received string to its original value.
  10. ##############################################################################
  11. sub url_decode
  12. {
  13.  
  14. #       Decode a URL encoded string or array of strings
  15. #               + -> space
  16. #               %xx -> character xx
  17.  
  18.  
  19.     foreach (@_) {
  20.         tr/+/ /;
  21.         s/%0a //g;
  22.         s/\^//g;
  23.         s/%(..)/pack("c",hex($1))/ge;
  24.     }
  25.     @_;
  26. }
  27.  
  28. ##############################################################################
  29. # MAIN PART: Decode the parameters and calls the correct subfunctions
  30. ##############################################################################
  31. # get args
  32. $request = $ENV{'QUERY_STRING'};
  33. @params = &url_decode(split(/[&=]/, $request));
  34. %paramPairs = @params;
  35. $size = ($paramPairs{"SIZE"} eq "" ? 30 : $paramPairs{"SIZE"});
  36. $dest = $paramPairs{"DEST"};
  37. $alpha = $paramPairs{"L"};
  38.  
  39. #while (@params) {
  40.     #$ARGV=shift;
  41.     #$orig = $ARGV; 
  42.     #$name = $orig;
  43.     #$name =~ s/-.*//g; 
  44.     #$param = $orig; 
  45.     #$param =~ s/.*-//g; 
  46.     ##place custome params here
  47.     #if ($name eq "size") {$size = $param;}
  48.     #if ($name eq "dest") {$dest = $param;}
  49.     #if ($name eq "alpha") {$alpha = $param;}
  50. #}
  51.  
  52. $~ = HTMLHEADER;
  53. write STDOUT;
  54.  
  55. #foreach $en (sort keys(%ENV)) {
  56.     #print "$en = $ENV{$en}<br>\n";
  57. #}
  58.  
  59. print "<FRAME SCROLLING=\"no\" TARGET=\"_top\" NAME=\"menu\" NORESIZE MARGINHEIGHT=4 SRC=\"file:///tmp/httpd/.products/.categories/$dest.head.html\">\n";
  60. print "<FRAME SCROLLING=\"yes\" NAME=\"content\" NORESIZE MARGINHEIGHT=4 SRC=\"file:///tmp/httpd/.products/.categories/$dest.html\#$alpha\">\n";
  61.  
  62. $~ = HTMLFOOTER;
  63. write STDOUT;
  64. ##############################################################################
  65. format HTMLHEADER =
  66. Content-type: text/html
  67.  
  68.  
  69.  
  70. <html>
  71. <head>
  72. <title>@*
  73. $disc_name
  74.  @*
  75. $disc_rest
  76. </title>
  77. </head>
  78. <FRAMESET ROWS="@<,80">
  79. $size
  80. .
  81. ##############################################################################
  82. format HTMLFOOTER =
  83.         <BODY BACKGROUND="icons/bkgrnds/homebg.gif" body bgcolor=black text=#ffffff link=#dddddd alink=#ffff00 vlink=#bbbbbb>
  84.  
  85.  
  86.         <FONT SIZE=-1>Copyright \0511995 <B><A
  87.  
  88.  
  89.         </BODY>
  90.  
  91.         </NOFRAME>
  92.  
  93.  
  94.         </FRAMESET>
  95.  
  96.     </HTML>
  97. .
  98.